package cn.yanceysong.gitstats.model;

import lombok.Data;
import lombok.Builder;
import lombok.AllArgsConstructor;
import lombok.NoArgsConstructor;

/**
 * 文件类型统计信息
 */
@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
public class FileTypeStats {
    
    /**
     * 文件类型（如 .java, .js, .py 等）
     */
    private String fileType;
    
    /**
     * 文件数量
     */
    private int fileCount;
    
    /**
     * 新增行数
     */
    private int addedLines;
    
    /**
     * 删除行数
     */
    private int deletedLines;
    
    /**
     * 修改行数
     */
    private int modifiedLines;
    
    /**
     * 添加统计信息
     */
    public void addStats(int added, int deleted, int modified) {
        this.addedLines += added;
        this.deletedLines += deleted;
        this.modifiedLines += modified;
    }
    
    /**
     * 增加文件数量
     */
    public void incrementFileCount() {
        this.fileCount++;
    }
}
